update and refine the fully converged design after team discussion#249
update and refine the fully converged design after team discussion#249liunick-msft wants to merge 1 commit intomainfrom
Conversation
There was a problem hiding this comment.
Pull request overview
Updates Azure Local ToR networking documentation to recommend a simplified Fully Converged storage VLAN design (one storage VLAN per ToR), and aligns reference/configuration guidance and troubleshooting steps with that approach.
Changes:
- Replaced “both storage VLANs on both ToRs” guidance with a “one storage VLAN per ToR (recommended)” baseline and clarified failover behavior.
- Updated NX-OS sample configuration snippets (allowed VLAN lists / VLAN definitions) and updated FAQs to match the revised pattern.
- Updated Environment Validator troubleshooting guidance to reflect the revised VLAN-to-ToR mapping.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
| TSG/Networking/Top-Of-Rack-Switch/Reference-TOR-Fully-Converged-Storage.md | Updates key design principle, FAQs, and switch config examples for the new fully converged storage VLAN recommendation. |
| TSG/Networking/Top-Of-Rack-Switch/Overview-Azure-Local-Deployment-Pattern.md | Updates deployment pattern overview/FAQ language and tables to reflect the recommended per-ToR storage VLAN mapping. |
| TSG/EnvironmentValidator/Networking/Troubleshoot-Network-Test-StorageConnections-ConnectivityCheck.md | Adjusts troubleshooting guidance for converged storage connectivity checks to align with the recommended VLAN placement. |
| switchport | ||
| switchport mode trunk | ||
| switchport trunk native vlan 7 | ||
| switchport trunk allowed vlan 7,201,711,712 | ||
| switchport trunk allowed vlan 7,201,711 |
There was a problem hiding this comment.
What: The ToR1 sample config still defines Storage VLAN 712 even though the updated recommended pattern says ToR-A/ToR1 should carry only VLAN 711.
Why: Including VLAN 712 in the ToR1 VLAN database contradicts the “one storage VLAN per ToR” guidance and can confuse readers into thinking both storage VLANs must exist on both switches.
How: Remove VLAN 712 from the ToR1 configuration block (and keep the trunk allowed list aligned with the VLANs actually present on that ToR).
| > [!NOTE] | ||
| > - Both ToR switches have **identical VLAN configurations** (7, 201, 711, 712) in Fully Converged deployments | ||
| > - SET at the host level handles vNIC-to-pNIC mapping to optimize storage traffic paths | ||
| > - ToR-A has Storage VLAN 711 only, ToR-B has Storage VLAN 712 only (one storage VLAN per ToR) |
There was a problem hiding this comment.
What: This note uses ToR-A/ToR-B terminology, but the surrounding sample configuration headings are labeled ToR1/ToR2.
Why: Mixing naming schemes in the same section makes it ambiguous which config block corresponds to “ToR-A” vs “ToR-B”.
How: Use a single naming convention throughout (either rename the config headings to ToR-A/ToR-B, or adjust the note to refer to ToR1/ToR2 consistently).
| > - ToR-A has Storage VLAN 711 only, ToR-B has Storage VLAN 712 only (one storage VLAN per ToR) | |
| > - ToR1 has Storage VLAN 711 only, ToR2 has Storage VLAN 712 only (one storage VLAN per ToR) |
|
|
||
| > [!NOTE] | ||
| > **Storage VLAN Configuration**: Storage VLANs can be configured as either **Layer 3 (L3) networks with IP subnets** or **Layer 2 (L2) networks without IP subnets**. **Layer 2 configuration is recommended** because it simplifies VLAN tagging, allowing Azure Local hosts to use any IP addresses without hardcoding subnet configurations on the switch or requiring predefined IP ranges. Since Azure Local nodes handle storage traffic tagging, ensure these VLANs are configured as **tagged VLANs on trunk ports** across all ToR switches. | ||
| > **Storage VLAN Configuration**: Storage VLANs can be configured as either **Layer 3 (L3) networks with IP subnets** or **Layer 2 (L2) networks without IP subnets**. **Layer 2 configuration is recommended** because it simplifies VLAN tagging, allowing Azure Local hosts to use any IP addresses without hardcoding subnet configurations on the switch or requiring predefined IP ranges. Since Azure Local nodes handle storage traffic tagging, ensure these VLANs are configured as **tagged VLANs on trunk ports** on their respective ToR switches. |
There was a problem hiding this comment.
What: This note now says storage VLANs should be configured only on their respective ToR switches, but later in the same document there is still guidance stating storage VLANs should be tagged on trunk ports “across all ToR switches”.
Why: Conflicting instructions in one document can lead to incorrect switch configs.
How: Update the later note to match this new recommended pattern (or clarify when/why the ‘across all ToRs’ option applies).
| > **Storage VLAN Configuration**: Storage VLANs can be configured as either **Layer 3 (L3) networks with IP subnets** or **Layer 2 (L2) networks without IP subnets**. **Layer 2 configuration is recommended** because it simplifies VLAN tagging, allowing Azure Local hosts to use any IP addresses without hardcoding subnet configurations on the switch or requiring predefined IP ranges. Since Azure Local nodes handle storage traffic tagging, ensure these VLANs are configured as **tagged VLANs on trunk ports** on their respective ToR switches. | |
| > **Storage VLAN Configuration**: Storage VLANs can be configured as either **Layer 3 (L3) networks with IP subnets** or **Layer 2 (L2) networks without IP subnets**. **Layer 2 configuration is recommended** because it simplifies VLAN tagging, allowing Azure Local hosts to use any IP addresses without hardcoding subnet configurations on the switch or requiring predefined IP ranges. For the recommended deployment patterns in this document, storage VLANs must be configured as **tagged VLANs on trunk ports only on their respective ToR switches**, and **must not be tagged across all ToR switches** unless you are intentionally implementing a non-recommended, legacy, or special-case design that explicitly requires global storage VLAN reachability. |
| @@ -83,10 +83,10 @@ A balanced design where all traffic types (management, compute, storage) share t | |||
| |---------------------|------------------------|-------------------------------|-------------------| | |||
| | **Switchless** | 2 NICs to switches (M+C traffic) + (N−1) direct inter-node NICs (S traffic) | Trunk ports with M, C VLANs only; no storage VLANs on ToRs | Edge deployments, remote sites, cost-sensitive environments | | |||
| | **Switched** | 4 NICs per host: 2 for M+C traffic, 2 dedicated for storage | M and C VLANs on both ToRs; S1 VLAN on ToR1 only, S2 VLAN on ToR2 only (dedicated storage NICs) | Enterprise deployments requiring dedicated storage performance and traffic isolation | | |||
There was a problem hiding this comment.
What: The table uses ToR1/ToR2 terminology for Switched deployments but ToR-A/ToR-B for Fully Converged.
Why: Inconsistent ToR naming in the same comparison table makes it harder to map guidance to the physical switches.
How: Standardize on a single convention (e.g., ToR-A/ToR-B everywhere, or ToR1/ToR2 everywhere).
| | **Switched** | 4 NICs per host: 2 for M+C traffic, 2 dedicated for storage | M and C VLANs on both ToRs; S1 VLAN on ToR1 only, S2 VLAN on ToR2 only (dedicated storage NICs) | Enterprise deployments requiring dedicated storage performance and traffic isolation | | |
| | **Switched** | 4 NICs per host: 2 for M+C traffic, 2 dedicated for storage | M and C VLANs on both ToRs; S1 VLAN on ToR-A only, S2 VLAN on ToR-B only (dedicated storage NICs) | Enterprise deployments requiring dedicated storage performance and traffic isolation | |
| 4. If any ping fails, check the following: | ||
|
|
||
| - That the VLANs are correctly configured on the TOR switches. In a converged deployment, both storage VLANs should be configured on the interface. | ||
| - That the VLANs are correctly configured on the TOR switches. In a converged deployment, each storage VLAN should be configured on its respective ToR switch (Storage VLAN A on ToR-A, Storage VLAN B on ToR-B). |
There was a problem hiding this comment.
What: This bullet mixes terminology: it refers to “TOR switches” but then says “respective ToR switch”.
Why: Inconsistent terminology within the same sentence is confusing, especially for readers unfamiliar with the acronym.
How: Use one form consistently in this document (either “TOR” everywhere or “ToR” everywhere).
This pull request updates Azure Local documentation to recommend a simplified and more efficient storage VLAN configuration for Fully Converged deployments. The new guidance recommends mapping one storage VLAN per ToR switch (rather than both VLANs on both switches), clarifies failover behavior, and updates diagrams, tables, FAQs, and configuration examples accordingly. The changes aim to improve clarity, reduce configuration complexity, and reflect current best practices.
Documentation and Configuration Guidance Updates: